import modal
import os

app = modal.App("secret-app")

# 方式一：从 Modal UI 创建的密钥组中加载
openai_secret = modal.Secret.from_name("openai-api-key")

# 方式二：从本地 .env 文件加载 (需要 pip install python-dotenv)
# 假设 .env 文件内容为: MY_SECRET="some_value"
local_env_secret = modal.Secret.from_dotenv()

# 方式三：直接从字典创建
dict_secret = modal.Secret.from_dict({"ANOTHER_KEY": "another_value"})

@app.function(secrets=[openai_secret, local_env_secret, dict_secret])
def use_secrets():
    # 密钥会作为环境变量注入容器
    print("OpenAI Key starts with:", os.environ.get("OPENAI_API_KEY", "")[:5])
    print("My Secret from .env:", os.environ.get("MY_SECRET"))
    print("Another key from dict:", os.environ.get("ANOTHER_KEY"))

@app.local_entrypoint()
def main():
    use_secrets.remote()